/*
 * LineaDeEntradaPajaros.cpp
 *
 *  Created on: 31/10/2012
 *      Author: ignatius
 */
#include <cmath>
#include <time.h>
#include <cstdlib>
#include "LineaDeEntradaPajaros.h"


LineaDeEntradaPajaros::LineaDeEntradaPajaros() {}

double LineaDeEntradaPajaros::velocidadInicialPajaro(double ticks) {
	double seed = 10 * ticks;
	double Velocidad0Maxima=27.8;
	double numeroAleatorio;
	double velocidadv0;
	double valorDivisorDecimal = 100000.0;
	int valorDivisorEntero = 100000;
	unsigned int resto;
	unsigned int valor;
	srand(seed);
	valor = rand();
	srand(valor);
	resto = rand() % valorDivisorEntero;
	numeroAleatorio = (double)resto / valorDivisorDecimal;
	velocidadv0 = numeroAleatorio * Velocidad0Maxima;
	return velocidadv0;
}

double LineaDeEntradaPajaros::generarAnguloAleatorio(double ticks) {
	double seed = 10 * ticks;
	double anguloMaximoRadianes = 1.48;   // angulo = 85 grados
	double anguloAlicuotaGrados;
	double numeroAleatorio;
	double anguloAlicuotaRadianes;
	double alfaradianes;
	double valorDivisorDecimal = 100000.0;
	int valorDivisorEntero = 100000;
	unsigned int resto;
	unsigned int valor;
	srand(seed);
	valor = rand();
	srand(valor);
	anguloAlicuotaGrados = 10;
	anguloAlicuotaRadianes = anguloAlicuotaGrados * 2 * M_PI / 360;
	resto = rand() % valorDivisorEntero;
	numeroAleatorio = fabs((double)resto / valorDivisorDecimal);
	alfaradianes = (floor((numeroAleatorio * 10 + 0.05))) * anguloAlicuotaRadianes;
	if (alfaradianes > anguloMaximoRadianes) alfaradianes = anguloMaximoRadianes;
	return alfaradianes;
}

LineaDeEntradaPajaros::~LineaDeEntradaPajaros() {}
